#ifndef _APPLICATION_H_
#define _APPLICATION_H_

#include <cstdio>
#include "glfw.h"

#include "input.h"
#include "gamestatemanager.h"

class Application
{
public:
    Application(int width, int height);
    ~Application();

    // starts the program's main loop, returns on exit
    void run();

private:
    void initGlExtensions();

    GameStateManager* _gsm;
    Input _input;
};

#endif // _APPLICATION_H_
